Field of the Invention
The field of the invention is data processing, or, more specifically, methods, apparatus, and products for virtualizing a host Universal Serial Bus (‘USB’) adapter.
Description of Related Art
The development of the EDVAC computer system of 1948 is often cited as the beginning of the computer era. Since that time, computer systems have evolved into extremely complicated devices. Today's computers are much more sophisticated than early systems such as the EDVAC. Computer systems typically include a combination of hardware and software components, application programs, operating systems, processors, buses, memory, input/output devices, and so on. As advances in semiconductor processing and computer architecture push the performance of the computer higher and higher, more sophisticated computer software has evolved to take advantage of the higher performance of the hardware, resulting in computer systems today that are much more powerful than just a few years ago.
Many peripheral computer components today are coupled for data communications to adapters to in accordance with the Universal Serial Bus specification. USB adapters are inherently point to point communication and are not easily shared between partitions in virtualized environments. Users today require at least one physical USB adapter per partition to connect to USB devices. For a large system comprising many partitions or in a data center this requirement may lead to a large number of physical adapters along with significant additional expense in cost, processing power, computer memory use, and power consumption. These negative factors presented as a result of an increased number of physical adapters are caused in party by the adapters themselves, but also by the enclosures required to provide the associated PCI or PCIe adapter slots.
Virtualizing USB adapters reduces power consumption in USB devices, hubs, adapters and enclosures. Software solutions exist to virtualize USB devices. These solutions use a single shared queue, where USB frames must be sorted, from the single shared queue, to many partitions. This is a very CPU and memory intensive implementation. The single queue solution also has poor performance.
Today's USB devices commonly include keyboards, mouse, speakers and flash drive devices. As USB continues to mature and higher speeds become available, USB is increasingly being used for tape drives, removable hard disk drives, and optical drives. Lack of an efficient, low cost, low power USB virtualization on a partitioned computer system is a significant problem. USB 3.0, which is 10 times faster than USB 2.0, will be utilized by an even broader spectrum of devices. The additional bandwidth allows more devices on the same link at the same time. The industry is moving tape drives and removable hard drives to USB as the preferred attachment. The need for an improved USB virtualized is presently increasing.